package com.ellwood.IPGuard.common.core.utils;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

/**
 * @ProjectName: IPGuard-boot
 * @PackageName: com.ellwood.IPGuard.common.core.utils
 * @ClassName: EllDateUtils
 * @Description: // 日期处理
 * @Author: Ellwood
 * @CreateDate: 2024/9/27 - 下午2:18
 * @Version: V1.0.0
 */
public class EllDateUtils {
        
        /**
         * 时间格式(yyyy-MM-dd)
         */
        public final static String DATE_PATTERN = "yyyy-MM-dd";
        /**
         * 时间格式(yyyy-MM-dd HH:mm:ss)
         */
        public final static String DATE_TIME_PATTERN = "yyyy-MM-dd HH:mm:ss";
        
        /**
         * 日期格式化 日期格式为：yyyy-MM-dd
         *
         * @param date 日期
         * @return 返回yyyy-MM-dd格式日期
         */
        public static String format(Date date) {
                return format(date, DATE_PATTERN);
        }
        
        /**
         * 日期格式化 日期格式为：yyyy-MM-dd
         *
         * @param date    日期
         * @param pattern 格式，如：DateUtils.DATE_TIME_PATTERN
         * @return 返回yyyy-MM-dd格式日期
         */
        public static String format(Date date, String pattern) {
                if (date != null) {
                        SimpleDateFormat df = new SimpleDateFormat(pattern);
                        return df.format(date);
                }
                return null;
        }
        
        /**
         * 日期解析
         *
         * @param date    日期
         * @param pattern 格式，如：DateUtils.DATE_TIME_PATTERN
         * @return 返回Date
         */
        public static Date parse(String date, String pattern) {
                try {
                        return new SimpleDateFormat(pattern).parse(date);
                } catch (ParseException e) {
                        e.printStackTrace();
                }
                return null;
        }
        
}
